1. Field of the Invention
This invention related to the field of software performance analysis and more particularly to software system performance prediction by linear component perturbation.
2. Description of the Related Art
The performance of a software system is generally determined by the complex interaction of a large number of software components. Traditionally, in order to understand how to improve the performance of a system, a “critical path” through the system would normally have to be determined. In general, however, this is difficult or impossible due to the complex, non-linear, nature of the problem.
One of the major challenges facing any attempt at improving the performance of a complex software system is determining where to apply the effort. It is a relatively simple matter to determine which parts of the system are used by a given industry standard benchmark (e.g. SPECweb99, Netbench, TPC-C, etc.). It is quite another matter to determine how much the performance of that benchmark depends on each individual system component. In many cases, simple “microbenchmarks” are developed that test a single component of the system's behavior in seclusion. However, it is highly likely that component changes that have a significant impact in a microbenchmark will show little or no benefit for the larger, more complicated industry standard benchmark. In other words, changes that improve the performance of a single component may have little effect on a system's overall performance.